
package com.ruoyi.client.service;

import com.ruoyi.client.pojo.form.BatchIdsForm;
import com.ruoyi.client.pojo.form.CartAddForm;
import com.ruoyi.client.pojo.form.CartUpdateForm;
import com.ruoyi.client.pojo.vo.CartVo;

import java.util.List;

public interface ICartService {

    /**
     * 增加商品至购物车中
     */
    Boolean add(CartAddForm form);

    /**
     * 删除购物车中的商品ById(单个）
     */
    Boolean deleteById(Long id);

    /**
     * 删除购物车中的商品ByIds(多个）
     */
    Boolean deleteBatch(BatchIdsForm form);

    /**
     * 删除购物车中的商品(我的全部）
     */
    Boolean deleteAllByMy();

    /**
     * 更改我的购物车项
     */
    Boolean update(CartUpdateForm form);

    /**
     * 更改我的购物车全部项是否勾选 用户全选/全不选
     */
    Boolean updateIsCheckedAll(Boolean isChecked);

    /**
     * 查询我的购物车列表
     */
    List<CartVo> listByMy();

    /**
     * 查询我的购物车列表（已勾选的)
     */
    List<CartVo> listIsCheckedByMy();


}
